package com.demo.core.model;

import java.util.List;
import java.util.Map;

import com.demo.core.model.support.SimpleBaseModel;

/**
 * 自定义表单项模型类
 */
public class FormItem extends SimpleBaseModel implements java.io.Serializable {
	
	/**
	 * 版本序列化ID
	 */
	private static final long serialVersionUID = 2446223714799063304L;
	
	/**
	 * 站点外键ID
	 */
	private Long siteId;
	
	/**
	 * 表单外键ID
	 */
	private Long formId;
	
	/**
	 * 业务角度的表单项分组字段
	 */
	private int groupType;
	
	/**
	 * 分组ID
	 */
	private Long groupId;
	
	/**
	 * 分组Name
	 */
	private String groupName;
	
	/**
	 * 自定义表单NAME
	 */
	private String name;
	
	/**
	 * 标题
	 */
	private String title;
	
	/**
	 * 行为
	 */
	private String action;
	
	/**
	 * 表单项KEY
	 */
	private String key;
	
	/**
	 * 表单项VALUE
	 */
	private String value;
	
	/**
	 * 表单项类型
	 */
	private String type;
	
	/**
	 * HTML的ID
	 */
	private String htmlId;
	
	/**
	 * HTML的元素
	 */
	private String htmlElement;
	
	/**
	 * HTML的类型
	 */
	private String htmlType;
	
	/**
	 * 表单项的HTML
	 * 如果该属性存在，则其他HTML属性将无效
	 */
	private String innerHtml;
	
	/**
	 * 数据源名
	 */
	private String ds;
	
	/**
	 * 绑定的名称
	 */
	private String bindName;
	
	/**
	 * 绑定的值
	 */
	private String bindValue;
	
	/**
	 * 数据的格式化字符串
	 */
	private String formater;
	
	/**
	 * 数据状态
	 */
	private String status;
	
	/**
	 * 是否可用
	 */
	private Boolean enabled;
	
	/**
	 * 优先级
	 */
	private Integer priority;
	
	/**
	 * 扩展属性列表
	 */
	private List<FormItemExtend> formItemExtendList;
	
	/**
	 * 扩展属性Map
	 */
	private Map<String, FormItemExtend> formItemExtendMap;
	
	public Long getSiteId() {
		return siteId;
	}
	public void setSiteId(Long siteId) {
		this.siteId = siteId;
	}
	public int getGroupType() {
		return groupType;
	}
	public void setGroupType(int group) {
		this.groupType = group;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getType() {
		return type;
	}
	public void setType(String type) {
		this.type = type;
	}
	public String getStatus() {
		return status;
	}
	public void setStatus(String status) {
		this.status = status;
	}
	public Boolean getEnabled() {
		return enabled;
	}
	public void setEnabled(Boolean enabled) {
		this.enabled = enabled;
	}
	public Long getFormId() {
		return formId;
	}
	public void setFormId(Long formId) {
		this.formId = formId;
	}
	public String getAction() {
		return action;
	}
	public void setAction(String action) {
		this.action = action;
	}
	public String getKey() {
		return key;
	}
	public void setKey(String key) {
		this.key = key;
	}
	public String getValue() {
		return value;
	}
	public void setValue(String value) {
		this.value = value;
	}
	public String getHtmlId() {
		return htmlId;
	}
	public void setHtmlId(String htmlId) {
		this.htmlId = htmlId;
	}
	public String getHtmlElement() {
		return htmlElement;
	}
	public void setHtmlElement(String htmlElement) {
		this.htmlElement = htmlElement;
	}
	public String getHtmlType() {
		return htmlType;
	}
	public void setHtmlType(String htmlType) {
		this.htmlType = htmlType;
	}
	public String getInnerHtml() {
		return innerHtml;
	}
	public void setInnerHtml(String innerHtml) {
		this.innerHtml = innerHtml;
	}
	public String getDs() {
		return ds;
	}
	public void setDs(String ds) {
		this.ds = ds;
	}
	public String getBindName() {
		return bindName;
	}
	public void setBindName(String bindName) {
		this.bindName = bindName;
	}
	public String getBindValue() {
		return bindValue;
	}
	public void setBindValue(String bindValue) {
		this.bindValue = bindValue;
	}
	public String getFormater() {
		return formater;
	}
	public void setFormater(String formater) {
		this.formater = formater;
	}
	public Integer getPriority() {
		return priority;
	}
	public void setPriority(Integer priority) {
		this.priority = priority;
	}
	public Long getGroupId() {
		return groupId;
	}
	public void setGroupId(Long groupId) {
		this.groupId = groupId;
	}
	public String getGroupName() {
		return groupName;
	}
	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}
	public List<FormItemExtend> getFormItemExtendList() {
		return formItemExtendList;
	}
	public void setFormItemExtendList(List<FormItemExtend> formItemExtendList) {
		this.formItemExtendList = formItemExtendList;
	}
	public Map<String, FormItemExtend> getFormItemExtendMap() {
		return formItemExtendMap;
	}
	public void setFormItenExtendMap(Map<String, FormItemExtend> formItemExtendMap) {
		this.formItemExtendMap = formItemExtendMap;
	}
}